import { defineConfig, loadEnv } from 'vite'
import react from '@vitejs/plugin-react'

// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {
  const env = loadEnv(mode, process.cwd(), '')
  return {
    plugins: [react()],
    server: {
      proxy: {
        // 开发环境代理文心一言，避免浏览器 CORS
        '/baidu': {
          target: 'https://aip.baidubce.com',
          changeOrigin: true,
          secure: true,
          rewrite: (path) => path.replace(/^\/baidu/, ''),
        },
      },
    },
    // 将可能设置的 QIANFAN_* 环境变量映射到前端可访问的 VITE_*，便于 import.meta.env 使用
    define: {
      'import.meta.env.VITE_BAIDU_API_KEY': JSON.stringify(env.VITE_BAIDU_API_KEY ?? env.QIANFAN_ACCESS_KEY ?? ''),
      'import.meta.env.VITE_BAIDU_SECRET_KEY': JSON.stringify(env.VITE_BAIDU_SECRET_KEY ?? env.QIANFAN_SECRET_KEY ?? ''),
      'import.meta.env.VITE_WENXIN_MODEL': JSON.stringify(env.VITE_WENXIN_MODEL ?? 'ernie_speed'),
      // Chat.jsx 会自动解析开发使用 /baidu 代理，无需强制指定；此处保留可选覆盖
      'import.meta.env.VITE_WENXIN_BASE': JSON.stringify(env.VITE_WENXIN_BASE ?? ''),
    },
  }
})
